Currently, in the realm of motion estimation and motion compensation technology, block matching is commonly adopted for determining a motion vector. For the block matching mechanism, a single block size is used for block matching, while the block size has a crucial effect on the motion vector determined. In general, when using a small block size for block matching, multiple similar image blocks are likely found such that choosing a correct motion vector is difficult. Usually, the motion vector determined does not truly reflect an actual motion direction of an image object. In contrast, when using a large block size for block matching, it is more difficult to find a similar image block. If a motion vector is determined using a large block, image quality from interpolation using the motion vector may be unsatisfactory. Therefore, the prior block matching mechanism is faced with a dilemma when determining a motion vector whether with a single large block or a single small block.